home *** CD-ROM | disk | FTP | other *** search
- OPERATORS AND FUNCTIONS
- Basic operators: Other operators:
- ──────────────────────────┬───────────────────────────────────────────────────
- + addition │ [( )] Parentheses: may be nested to any extent;
- - subtraction │ parser WON'T distinguish between ( and [
- * multiplication │ ; Separate halves of a parametric equation
- / division │ ' Make rest of the equation a comment
- ^ exponentiation │ {m, n} Specify domain, where 'm' is the start of
- = normal equation │ the domain and 'n' is the end. Either end
- ──────────────────────────┤ may be left open by omitting 'm' or 'n'.
- Functions supported: │ <, > less-than or greater-than inequality
- ──────────────────────────┼───────────────────────────────────────────────────
- abs absolute value │ exp Euler's number to the given power (e^x)
- acos arc cosine │ int greatest integer ([x] is not supported)
- asin arc sine │ ln natural logarithm
- atan arc tangent │ log logarithm base 10
- asec arc secant │ sec secant (1/cos)
- acsc arc cosecant │ sin sine
- acot arc cotangent │ sinh hyperbolic sine ┌─────────┐
- cos cosine │ sqrt square root │PgDn for │
- cosh hyperbolic cosine │ (or sqr) │more help│
- cot cotangent (1/tan) │ tan tangent └─────────┘
- csc cosecant (1/sin) │ tanh hyperbolic tangent
- CONSTANTS AND VARIABLES
-
- Variables Usage
- ───────────────── ──────────────────────────────────────────────
- x, y rectangular coordinates
- r, t r and theta in polar coordinates
- x, y, t x and y as functions of t in parametric form
- t, x, dx, d2x... solves up to fourth-order ODE
- (or x, y, dy...) dx is actually dx/dt in dx/dt = f(x,t)
- t,x,y,z,w,dx...dw solves up to 4th order linear system of ODEs
- a user-settable free variable; can specify range
- and step rate to calculate several values
-
- Constant Value
- ───────────────── ──────────────────────────────────────────────
- b, c user-settable free variables (constant)
- d converts degrees to radians = π/180
- e Euler's number = 2.718...
- pi (or p) π = 3.14159...
-
- NOTE: by default, all trig functions work in radians, not degrees. You
- can convert using the constant d: e.g. sin(45d) = sin (pi/4)
- cos (x*d) = cosine of x, in degrees Press PgDn for more help.
- GRAPHING CARTESIAN FUNCTIONS
- Here are the ground rules for normal Cartesian equations:
- + Always use exactly one "=" per equation
- + Use exactly one "x" or "y"; you cannot use more than one of both variables.
- + Always put some sort of expression on both sides of the "="
- + An expression consists of any mathematically meaningful combination of
- decimal numbers, binary operations like + and *, parentheses, functions,
- and variables or constants.
- + Spaces are completely optional, except where they serve to separate
- alphabetic identifiers.
- + The order of operations is the standard algebraic left to right of:
- Functions, Parentheses, Exponents,
- Multiplication and division, Addition and subtraction
-
- Graphmatica supports implied multiplication of variables and constants, but
- variables and other alphabetic identifiers such as functions and constants
- MUST be separated by a space or '*' or they will not be identified correctly.
- Examples: 3x 5(2x+3) x pi x*cos(x)
-
- Call a function by tying the function's name followed by an argument. If the
- argument is more complex than "x", enclose it in parentheses to be safe.
- Examples: cos x log (2x) sin (3x^2-5)
- Press PgDn for more help.
- SPECIFYING THE DOMAIN
- Graphmatica lets you specify the domain of each equation independently, so you
- do not have to use the range function to change the default domain each time.
- To specify a domain, add anywhere in your equation the expression:
- { m, n }
- where 'm' is the start of the domain and 'n' is the end. If you want the
- domain to start at the default start, leave 'm' out. To leave the end of the
- domain open, leave out 'n'. So if the range on-screen is (-10,10), specifying
- a domain of "{ ,5}" will graph from -10 to 5, and one of "{-4, }" from -4 to
- 10. To graph a parametric equation, you MUST specify a domain that is closed.
-
- The domain is parsed like any other expression, so you can use any operator or
- function as well as numbers and the constants d, e, and pi. However, you can
- not use variables in a domain. Examples: {0, 2p} { -3, log 2}
-
- USING FREE VARIABLES
- The free variables 'b' and 'c', which you can define yourself, make it easier
- to "play around" with the exact shape of a curve without editing the equation.
- If you want, you can type in a value manually using a format similar to
- the domain specifier described above. (See manual for details)
- Examples: {b: 1} {c: -1/2} {b: -pi/4}
- If you don't include this value, Graphmatica will prompt you for it.
- Press PgDn for help on function families.
- GRAPHING FAMILIES OF FUNCTIONS
- The free variable 'a' lets you specify not just a single value, but a range of
- possible values that it can take. This lets you easily graph families of
- functions or level curves of a 3-D surface. For instance, "y = a*cos(x)" will
- graph cosine curves of varying amplitudes, and "x^3+y^2 = a" will draw level
- curves of the surface "f(x,y) = x^3+y^2".
-
- When you use 'a' in an equation, Graphmatica will prompt for the needed values
- and insert them for you: the start of the range, the end of the range, and the
- amount to step by. Graphmatica starts by graphing the function with 'a' set to
- the start of its range, and then increments 'a' by the step value and draws
- another graph until 'a' exceeds the end of its range. (You can give a negative
- step value as long as the end of the range is less than the start.) The
- program does not put any limit on the number of curves in the "family" you can
- graph, but this feature uses memory rapidly, so try to limit 'a' to about 10
- iterations.
- MODIFIYING FREE VARIABLE VALUES
- The Set Vars command in the Point menu allows you to change the value of 'a',
- 'b', or 'c' instantly in all equations without actually editing any of them.
- After you select a variable and provide a new value for it, Graphmatica will
- find all the equations using the variable, make a copy of each using the new
- value, and then graph them automatically.
- Press PgDn for more help.
- DRAWING THE GRAPH
-
- Once you have entered an equation that parses successfully and pressed enter,
- Graphmatica will proceed to graph it. To interrupt a graph when the computer
- is in the process of drawing it, hit any key and the program will display on
- the bottom line the message:
- "PAUSE at x=#, y=#. Press ESC to quit, any other key to restart.. "
- where # indicates the x and y coordinates you stopped it at. If you mistyped
- the equation and want to fix it, just press ESC. Be patient! Graphmatica may
- need a while to produce a quality graph on a slower machine. To speed up the
- graphing, you may want to select a lower Fineness value.
-
- When the graph for your equation is complete, the blinking cursor will
- reappear in the equation editor. If you'd like to type in a completely
- different equation, press ESC to clear the input field. If you'd rather modify
- the last equation, go right ahead; it's already stored in the redraw queue.
- Or modify any previously entered equation by pressing the down arrow key (or
- clicking on the down arrow next to the editing field) to drop down the
- equation queue listbox and then selecting an equation from the redraw queue.
- You can then redraw this equation by pressing enter, or modify it to create a
- new equation. To access Graphmatica's other features, press Alt to raise the
- menu, or click on the menu with the mouse.
- Press PgDn for help on inequalities.
- GRAPHING INEQUALITIES
-
- You can graph rectangular-coordinate inequalities by replacing the '=' with
- '<' or '>' for many simple functions and relations. This feature is presently
- only available for cartesian graphs. (Also, since the free variable 'a'
- implies that more than one curve will be drawn, equations containing 'a' are
- incompatible with inequalities, and the parser will not accept any inequality
- that uses 'a'.)
-
- The region that solves the inequality is hatched in with the graph color. (The
- curve itself is not actually dotted to indicate a strict inequality, however,
- so '<' is effectively "less than or equal to".) In most cases, asymptotes are
- detected and a boundary added there as appropriate, so graphs like "y < tan x"
- and "xy > 1" are drawn correctly. In addition, the valid domain of the
- function being graphed is detected automatically, so "y > log x", for
- instance, shades only the first and fourth quadrants.
-
- To accommodate intersecting regions, the graphing routine alternates between
- '\' and '/' hatching. Best results will be obtained when you graph no more
- than two inequalities on the same screen; a region MAY SHADE INCORRECTLY if
- another graph of the same color intersects it. If you have problems with
- shading "leaking out," increasing the fineness should help.
- Press PgDn for help on polar graphs.
- EXTENDED GRAPH FUNCTIONS: POLAR GRAPHS
- Polar coordinates are a fundamentally different approach to representing
- curves in 2-dimensional space. If you have never used polar coordinates and
- want to understand them, you should read Section III in the manual first.
- To make a graph using polar coordinates, we calculate a distance to plot
- out from the origin as we let theta ("t") sweep around in the positive
- direction. The default domain is 0 to 2pi (the first complete circle in the
- positive direction), but you can easily change these values using the
- T range function [see View help file]. Polar graphs are entered in the
- equation editor just like normal graphs. The only difference in what you type,
- and how Graphmatica detects a polar graph, is that you must use the variables
- 't' and 'r' instead of 'x' and 'y'. The restrictions are still the same: you
- can have one and only one instance of the dependent variable 'r' but it can be
- located almost anywhere in the equation. Watch as your graph is drawn; often
- the direction it is going is as important as the figure it draws. (In a
- "double" equation of "r^2", first the positive and then the negative roots are
- drawn; they should be drawn simultaneously but it isn't practically possible.)
- The x and y coordinate ranges and the range for theta are completely
- independent; in normal Cartesian graphing, Θ's value is irrelevant, and in
- polar graphing, Θ controls the domain of the graph, but the x and y ranges
- still control the physical screen you see. If you want to change your view of
- a polar graph, use the scale or range functions just as you would normally.
- Press PgDn for help on parametric graphs.
- EXTENDED GRAPH FUNCTIONS: PARAMETRIC GRAPHS
- (For a full explanation of parametric graphing, read Section III in
- the manual. This section just shows how to enter parametric graphs.) In
- parametric graphing, the cartesian x and y coordinates are calculated based on
- a third variable (the "parameter" of x and y) called 't' (not to be confused
- with the 't' used to represent theta). T is allowed to increase from the start
- of the domain you specify to the end. At each value, the functions x(t) and
- y(t) are calculated to give an (x,y) coordinate which is drawn. Graphmatica
- then connects these points to form a smooth curve -- if something you graph
- looks jagged, you probably need to adjust the fineness. (See Options help)
- To enter a parametric graph, you need to remember four basic parts: the
- x(t) and y(t) functions, the semicolon between them (this is how Graphmatica
- knows you're entering a parametric graph), and the domain for t.
- semicolon y-function
-
- x-function -> x = 2t ; y = 2t^2 {-10, 10} <- domain
- You don't need to solve for x and y (5x=t is OK), but only one x and one y can
- appear in the whole equation, and "double" equations like "x^2=t" are NOT
- supported (if you enter them only the positive root will be found). You MUST
- specify a domain for each parametric equation! Some curves (like those based
- on sin and cos) work best over a {0,2pi} domain, like polar graphs. Others
- match the default domain of normal graphs better. If you estimate the domain
- wrong, abort the graph and edit it. Press PgDn for help on differentials.
- GRAPHING APPROXIMATIONS OF ORDINARY DIFFERENTIAL EQUATIONS
-
- To solve a first order ODE, include the differential "dx" (for dx/dt) in your
- equation. If you do NOT include a "domain" (e.g. {0, -1}), the program will
- draw a slope field for dx/dt = f(x,t), with t as the horizontal axis and x the
- vertical. If you do include a "domain" {m, n}, the equation will be graphed as
- a specific solution to the initial-value problem x(m)=n by R-K approximation.
-
- Graphmatica also solves 2nd-4th order IV problems; to specify higher order
- differentials, use the variables d2x, d3x, or d4x. You can also use the set of
- variables x, y, dy, d2y, d3y, d4y if you prefer.
-
- For an nth order equation, you need to give n+1 initial values. You can type
- these into the equation using the notation described above; the order of
- values is t, x, dx, d2x, d3x. You can also specify an IV by moving the
- crosshairs with the arrow keys or mouse. Select the ODE you want to modify in
- the combobox and then choose Set IV from the Point menu, move the cursor to
- the desired location, and press enter or click to select the IV point (t,x).
- For higher-order ODEs, after you select a point, Graphmatica draws a rubber
- band from it to the cursor position until you click on a second point. The
- slope of the line between the two points determines the value of dx. If
- required, further initial values will be requested via dialog boxes.
- Press PgDn for help on systems of ODEs.
- SYSTEMS OF DIFFERENTIAL EQUATIONS
-
- Graphmatica can also approximate the solutions of up to fourth-order systems
- of ODEs. You can pose your system in either of two sets of variables:
- {t,x,dx,y,dy,z,dz,w,dw} or {t,x1,dx1,x2,dx2,x3,dx3,x4,dx4}. In each case, t is
- the independent variable, and the variables d_ are the derivatives d_/dt. You
- specify the complete system in a manner similar to parametric equations,
- namely (for a fourth-order system):
-
- dx = f1(x,y,z,w,t); dy = f2(..); dz = f3(..); dw = f4(..) {t0,x0,y0,z0,w0}
-
- where f1...f4 are some functions of the variables x,y,z,w, and t, and x0...w0
- are the initial values of the system at t0. Separate equations with semi-
- colons, and enclose the initial values in curly braces. The equations in the
- system must be specified in the order dx, dy, dz, dw.
-
- To graph a third- or second-order system, just leave out the equations for dw,
- or for dz and dw, and use the appropriate number of initial values instead.
-
- To select the initial value points with the mouse, select the equation in the
- listbox, choose Set IV from the Point menu, and click on one IV point for each
- equation in the system. The first click sets the value of t also.
- Press PgDn for help on Error Messages.
- ERROR MESSAGES
- A number of error messages may be encountered when graphing. Most of them
- are fatal; the equation cannot be graphed and you must edit it. They will make
- the computer beep so you know there is a problem. The others apply only to
- specific point(s) for which a y-value cannot be generated. They will not
- appear unless turn the Warnings option on, and then appear silently.
- [Note that all warning messages which refer to the variables 'x' or 'y'
- will actually be 't' or 'r' when you are dealing with a polar equation.]
-
- Please type an equation (or select from the listbox); then press ─┘ to graph.
- You pressed enter on the graph line without selecting or typing in
- an equation.
-
- No equals sign or more than one found. Press any key to edit the equation.
- To be a valid and graphable, your equation must include exactly one equals
- sign ['=']. If you get this error, you either left out the '=' or
- accidentally typed two or more of them. For parametric equations, there
- must be an '=' on each side of the dividing ';'.
-
- One or both sides of equation evaluated to nothing. Please edit your equation.
- Make sure there is some sort of expression on each side of the
- equation. Obviously, an entry like "y=" can't produce a meaningful graph.
- Press PgDn for more error messages.
- ERROR MESSAGES continued
-
- Inequalities only supported for rectangular equations. Replace < or > with =.
- Inequalities cannot presently be evaluated for polar, parametric,
- or differential equations. You may still be able to draw the graph if you
- can express the inequality in rectangular form.
-
- Found bad operation or mismatched parentheses. Press any key to edit...
- You equation had different numbers of open and close parens, was missing
- an operand for a binary operation, or included something else the parser
- couldn't digest. Examine your equation carefully and fix whatever
- seems to be the problem.
-
- Not enough initial values to draw graph. Make sure there are # and try again.
- Although 1st-order ODEs may be graphed as slope-fields without IVs, higher
- order ODEs require initial values for t, x, dx..., up to the derivative
- one order less than the highest one in the equation. Make sure to specify
- the right number of valid IVs.
-
- Cannot accurately draw the graph of a discontinuous function (like y=w^x, w<0)
- The correct graph of this class of functions has singularities and thus
- cannot be drawn accurately with the algorithm Graphmatica uses on smooth
- curves. Press PgDn for more error messages.
- ERROR MESSAGES continued
-
- Missing argument to a binary operation or function. Please edit your equation.
- The parser couldn't find any identifiers or expressions to use as one of
- the operands to a binary operation (like '+') or as the argument to a
- function, like cos(x). All functions require one argument following the
- function name.
-
- Found unknown variable or function. Press any key to edit the equation.
- Check that your equation contains only valid identifiers (see the
- functions and variables tables in the Graph help file) and that you
- separated each of them with an operator, space, or some other punctuation.
-
- No dependent variable or more than one 'y' found. Please edit your equation.
- Although Graphmatica can isolate ONE 'y' or 'x' variable and graph some
- relations, it cannot perform the factoring needed to isolate the a
- variable when both 'x' and 'y' occur more than once. It also cannot plot
- polar graphs as a function of r instead of t or isolate 'r' when more than
- one instance is found. If you can adjust the equation so it uses only one
- instance of the dependent variable, do so; otherwise it can't be graphed.
- In parametric graphing, this message may also indicate that no 'x'
- variable was found in the x(t) equation.
- Press PgDn for more error messages.
- ERROR MESSAGES continued
-
- Can't find the inverse of this function of y. Press a key to edit equation.
- You tried to graph an equation like "int(y)=x" or "abs(y)=x" for which y
- cannot be isolated by taking the inverse of the function. The functions
- which cannot be isolated are "abs", "cosh", "sinh", "tanh", and "int". If
- you can't adjust the equation so this error does not occur, it is not
- graphable.
-
- Parametric equation requires that you specify domain! See 'Graph' help file.
- You typed in a parametric equation (or accidentally hit the semicolon) and
- neglected to include a closed domain [like {1,6}]. Because the diversity
- of parametric equations makes it hard to pick a default domain, you have
- to include one with each parametric graph. See Sections I and III in the
- manual for help on entering a domain and parametrics.
-
- Domain did not evaluate to a constant value. Press a key to edit equation.
- The domain you entered either could not be parsed, or was found to contain
- a non-constant identifier, like x or y. Valid domains must have at least
- one side of the range defined and can't contain variables, although any
- other expression that evaluates to a constant is OK.
-
- Press PgDn for warning error messages.
- WARNING ERROR MESSAGES
- Overflow at x=#.##.
- Some function or operation generated a number too large to fit into an
- eight-byte floating point variable. The point at x=#.## was not graphed.
- Division by zero at x=#.##.
- At #.## your equation attempted division by zero so the point was skipped.
- Can't raise a negative number to a fractional power. [x=#.##]
- Due to the possibility of getting an even root of a negative number, the C
- Library pow() function refuses to process any arguments like these. The
- portion of your graph (if any) where the base is not negative or the power
- is not fractional should be graphed perfectly. This error also occurs when
- you take the square root of a negative number with the "sqr" function.
- Can't find the logarithm of a negative number. [x=#.##]
- The natural logarithm (ln) and base 10 logarithm (log) functions are
- defined only on x greater than zero.
- Domain error: asin/acos functions defined only on -1≤x≤1. [x=#.##]
- The arcsine (asin) and arc cosine (acos) functions are only defined
- between -1 and 1 (the range of the sin and cos functions).
- Inverse of abs() not defined on negative numbers. [x=#.##]
- This reminder warning occurs when you graph a curve like abs(y)=x
- without restricting the domain of the expression equal to abs(y) to
- be positive.
- ──────────────End of Graphing help. Press ESC to return to menu.──────────────
-